A simply typed context calculus with rst-class environments
نویسندگان
چکیده
We introduce a simply typed -calculus " which has both contexts and environments as rst-class values. In ", holes in contexts are represented by ordinary variables of appropriate types and hole lling is represented by the functional application together with a new abstraction mechanism which takes care of packing and unpacking of the term which is used to ll in the holes of the context. " is a conservative extension of the simply typed -calculus, enjoys subject reduction property, is con uent and strongly normalizing. The traditional method of de ning substitution does not work for our calculus. So, we also introduce a new method of de ning substitution. Although we introduce the new de nition of substitution out of necessity, the new de nition turns out to be conceptually simpler than the traditional de nition of substitution.
منابع مشابه
Translation of rst-class environments to records
We have studied a calculus with rst-class environments which originates from the -calculus. We give a translation of the calculus to a record calculus and show fundamental properties by using the translation. First we give a translation of simply typed calculus ! env into simply-typed record calculus ! record , which is used for proving strong normalization of ! env . Second we introduce a tran...
متن کاملA Simply Typed Context Calculus with First-class Environments
We introduce a simply typed λ-calculus λκε which has both contexts and environments as first-class values. In λκε, holes in contexts are represented by ordinary variables of appropriate types and hole filling is represented by the functional application together with a new abstraction mechanism which takes care of packing and unpacking of the term which is used to fill in the holes of the conte...
متن کاملSimply Typed Lambda Calculus with First-Class Environments
We propose a lambda calculus X^nv where it is possible to handle first-class environments. This calculus is based on the idea of explicit substitution, that is; /la-calculus. Syntax of /i^t, is obtained by merging the class of terms and the one of substitutions. Reduction is made from the weak reduction of Acr-calculus. Its type system also originates in the one of Aer-calculus. Confluence of /...
متن کاملThe category of simply typed λ-terms in Agda
We present a proof in Agda that the substitutions in simply typed λ-calculus form a category which has nite products. We base our syntax on directly typed λ-calculus, without de ning rst pure λ-calculus. We use parallel substitutions, a better point of view to argue about substitutions. We show that we can reduce all the proofs to similar diagrams, that make it automatic.
متن کاملAn Application of Klop ' s Counterexampleto a Higher
In 1978, Klop demonstrated that a rewrite system constructed by adding the untyped lambda calculus, which has the Church-Rosser property, to a Church-Rosser rst-order algebraic rewrite system may not be Church-Rosser. In contrast, Breazu-Tannen recently showed that augmenting any Church-Rosser rst-order algebraic rewrite system with the simply-typed lambda calculus results in a Church-Rosser re...
متن کامل